﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using Interfaces;
using Presentador;
using ReporteTrafico.App_Data;

namespace ReporteTrafico
{
    public partial class Login : Page, ILogin
    {
        //<summary>
        // Objeto del tipo PresentadorUsuario
        //</summary> 
        PresentadorLogin login;


        //<summary>
        // Constructor
        //</summary> 
        public Login()
        {
            login = new PresentadorLogin(this);
        }


        // ESTO ES PARA QUE CADA VEZ QUE SE CARGE LA PÁGINA SE VALIDE SI HAY UN USUARIO LOGUEADO O NO...
        // REVISAR CORREO...
        protected void Page_Load(object sender, EventArgs e)
        {
            //Session.Abandon();
        }

        #region Encapsulamiento de Componentes
        public String Usuario
        {
            get { return TextBoxUsuario.Text; }
            set { TextBoxUsuario.Text = value; }
        }

        public String Contraseña
        {
            get { return TextBoxContraseña.Text; }
            set { TextBoxContraseña.Text = value; }
        }
        #endregion

        //<summary>
        // Método del botón que inicia el evento de Iniciar Sesión
        //</summary> 
        protected void Button_IniciarSesion(object sender, EventArgs e)
        {
            int existencia = login.VerificarAutenticacionUsuario();

            if (existencia != 0)
            {
                Session[Recursos.SesionUsuario] = TextBoxUsuario.Text;
                Session[Recursos.SesionIdUsuario] = existencia;
                Response.Redirect(Recursos.Home);
            }
            else
            {
                login.LimpiarFormulario();
            }
        }
    }
}